Some embodiments of the present disclosure are directed to an improved approach for implementing online upgrading of a database environment using transparently-patched seed data tables used by software applications running in the database environment.
During an upgrade of a computing environment, such as a computing environment having a relational database engine, it frequently occurs that both application code and application load data (e.g., initialization data, default data, forms, menus, etc.) need to be upgraded (e.g., up-revisioned). Legacy techniques often require that the application code and all application initialization data are upgraded at the same time. However that technique becomes impractical in modern systems at least in the aspect that modern systems may have hundreds of applications running, at least some of which are critical to the mission served by the computing environment, and should not be taken offline for long periods of time.
Other legacy techniques have partially addressed the foregoing problem by updating the application initialization data and restarting the application later at some convenient moment. Yet, this technique does not address the situation where both the application code and application load data need to be up-revisioned concurrently (e.g., to be sure that the code and data are synchronized to the same version).
Yet another legacy technique forces a coding standard onto application developers so the application would be aware of the occurrence of, and nature of, an up-revision of the application load data, however this techniques is both error prone and not scalable.
What are needed are techniques to transparently perform an upgrade of a computing environment that includes an upgrade of both application code and application load data. Further, what are needed are techniques to transparently perform an upgrade of a computing environment that eliminates the need for application programmers to write application code to manage upgrades.
Moreover, none of the aforementioned technologies have the capabilities to perform online upgrading of a database environment using transparently-patched seed data tables. Therefore, there is a need for an improved approach.